/**
 * description：入口文件
 * author：洪俊勇
 * createTime：2017/8/27
 * version:1.0.0.0
 * history:
 *   1、
 *   2、
 */
var express = require('express');/* 加载模块 */
var path = require('path');
var mongoose = require('mongoose');

var port = process.env.PORT || 3001;/* 设置端口 */
var app = express();/* 启动web服务器 */

var bodyParser = require('body-parser');

var dbUrl = 'mongodb://127.0.0.1:27017/imooc';
mongoose.connect(dbUrl,{useMongoClient: true});/* 连接数据库 */

app.set('views','./app/views/pages');/* 设置视图的跟目录 */
app.set('view engine','jade');/* 设置模版引擎 */

// app.use(bodyParser.json());
// 以下这句话替换上面
app.use(bodyParser.urlencoded({extended:true}));

/* 配套使用 */
var session = require('express-session'); //如果要使用session，需要单独包含这个模块 npm install express-session --save-dev
var cookieParser = require('cookie-parser'); //如果要使用cookie，需要显式包含这个模块 npm install cookie-parser --save-dev
var mongoStore = require('connect-mongo')(session);  /* 服务器重启，session依旧存在 npm install connect-mongo --save */
app.use(cookieParser());

// var multipart = require('multiparty');
// app.use(multipart);//上传图片
var multipart = require('connect-multiparty');
app.use(multipart(/*{uploadDir:'./public/upload' }*/));

app.use(session({
    secret:'imooc',
    store:new mongoStore({
        url:dbUrl,
        collection:'sessions'
    })
}));

/**
 * 可以在控制台看到请求的页面、js文件等信息
 * 查看源代码，排版也比较整齐
 * @type {morgan}
 */
var morgan = require('morgan');
var logger = morgan('dev');
if('development' === app.get('env')){
    app.set('showStackError',true);
    app.use(logger);
    app.locals.pretty = true;
    mongoose.set('debug',true);
}

require('./config/routes')(app);

app.use(express.static(path.join(__dirname,'public')));
app.locals.moment = require('moment');
app.listen(port);

console.log('port ' + port);













